package org.jeecg.modules.hotel.arrangement.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.basic.demo.apartment.entity.LwgyBaseApartment;
import org.jeecg.modules.basic.demo.bed.entity.LwgyBaseBed;
import org.jeecg.modules.basic.demo.bed.entity.LwgyBedAssignment;
import org.jeecg.modules.hotel.arrangement.entity.*;


import java.util.List;

public interface LwgyHotelArrangementMapper extends BaseMapper<LwgyHotelArrangement> {
    void checkOutStu(LwgyHotelArrangement lwgyHotelArrangement);

    void updateBedStu(LwgyHotelArrangement lwgyHotelArrangement);

    List<LwgyBaseBed> getBedListByStudentId(String studentId);


    Integer getClassOpenTime(String studentClass);

    List<ImportStuHotel> outStuHotel(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed);

    List<LwgyXyBedAssignment> outXyHotel(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed);

    List<StuHotelRoster> StuZsHotel(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed);

    List<ImportXyScore> outXyScore(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed,@Param(value = "scaleBatches") String scaleBatches);

    /*List<ImportTeacherScore> outTeacherScore(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed,@Param(value = "scaleBatches") String scaleBatches);*/
    List<ImportTeacherScore> outTeacherScore(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed);


    List<ImportTeacherScore> outTeacherScore1(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed);


    /*List<ImportScore> outScore(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed,@Param(value = "scaleBatches") String scaleBatches,@Param("studentCampus") String studentCampus, @Param("studentCollege") String studentCollege);*/
    List<ImportScore> outScore(@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed,@Param(value = "scaleBatches") String scaleBatches);

    Integer maxBed (@Param(value = "lwgyBed") LwgyBaseApartment lwgyBed);

    List<LwgyHotelArrangement> queryStuBedByNumberList(@Param(value = "numbers") List<String> numbers);


    List<ImportStuHotelBed> selectBedByStuList(List<ImportStuHotelBed> list);

    List<ImportStuHotelBed> selectStudentIdList( List<ImportStuHotelBed> list);

    List<ImportStuHotel> selectStudentIdListX( List<ImportStuHotel> list);

    List<LwgyBaseBed> selectStuBedByStuId(@Param(value = "ids") List<String> ids);

    List<LwgyBaseBed> selectStuBedByBedId(@Param(value = "bedIds") List<String> bedIds);


    void cleanBedByStudentId(List<String> studentIdList);

    List<ImportHoildayStu> selectHoildayStudentIdList( List<ImportHoildayStu> list);
    List<ImportHoildayStu> selectBedByHoildayStuList(List<ImportHoildayStu> list);

}
